import Vue from 'vue'
import VueRouter from 'vue-router'
import Login from '../components/login.vue'
import Home from '../components/home.vue'
import Welcome from '../components/welcome.vue'
import Users from '../components/user/users.vue'
import Categories from '../components/goods/categories.vue'
import Goods from '../components/goods/goods.vue'
import Params from '../components/goods/params.vue'
import Rights from '../components/power/Rights.vue'
import Roles from '../components/power/Roles.vue'

import Orders from '../components/orders/orders.vue'
import Reports from '../components/reports/reports.vue'
import Add from '../components/goods/Add.vue'


Vue.use(VueRouter)

const routes = [{
  path: '/login',
  name: 'Login',
  component: Login
},
  {
    path: '/',
    name: 'Login',
    redirect: '/login'
  },
  {
    path: '/home',
    name: 'Home',
    component: Home,
    redirect: '/welcome',
    children: [
      {path: '/welcome', component: Welcome},
      {path: '/users', component: Users},
      {path: '/categories', component: Categories},
      {path: '/goods', component: Goods},
      {path: '/params', component: Params},
      {path: '/rights', component: Rights},
      {path: '/roles', component: Roles},
      {path: '/orders', component: Orders},
      {path: '/reports', component: Reports},
      {path: '/goods/add', component: Add}
    ]
  }
]

const router = new VueRouter({
  routes
})

//挂载路由导航守卫
router.beforeEach((to, from, next) => {
  //to 将要访问的路径
  //from 代表从哪个路径跳转而来
  //next 是一个函数  表示放行
  //next() 放行   next('/login')强制跳转
  if (to.path === '/login') return next()
  //获取token
  const tokenstr = window.sessionStorage.getItem('token')
  if (!tokenstr) return next('/login')
  next()

})

export default router
